package com.ailk.kbi.kbiwarden.wsi.service;

import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;

/**
 * 中转服务接口。
 * <p>
 * 中转服务会临时保存一个字符串，并交付一个票据。 保存的时间不会很长，一般在一分钟之内。 当有客户端再次提供该票据时，中转服务会交付临时保存的字符串。
 * 票据只能使用一次。
 * </p>
 * 
 * @author kyunra
 * 
 */
@WebService
public interface Transfer {

	/**
	 * 寄存
	 * 
	 * @param source
	 *            需暂存的字符串
	 * @return 票据UUID
	 */
	@WebResult(name = "voucher")
	String deposit(@WebParam(name = "source") String source);

	/**
	 * 提取
	 * 
	 * @param voucher
	 *            票据UUID
	 * @return 暂存的字符串
	 */
	@WebResult(name = "source")
	String draw(@WebParam(name = "voucher") String voucher);
}
